package com.ys.polymorphic;

/**
 * 描述: 源子类
 *
 * @author CodeYang
 * @version 2020/12/16 19:48
 */
public class Tom {

    String name;

    public   void show (){
        // this 指向谁调用它,本质上时 AtoTom 的obj对象在调用,所以指向obj这个类,指向了 AtoTom中的show 方法
        // 编译时：obj 的编译时类型是 Tom 类，Tom 类中有 show ()方法，则编译通过。
        // 运行时：Tom 的运行时类型是 AtoTom 类，执行“this.show();”运行的是 AtoTom 类中的 show() 方法。
        // 想实现这样的效果,必须要 有继承,并且重写方法,要不然无法保持编译不出错
        this.show();
        System.out.println("Tom---name:"+name);
    }
}
